How to do X in shell scripts
How to do X in shell scripts
stdin を変数に設定する
stdin を引数に展開する
1文字ごとに処理する
code:shell
echo "これはテスト" | grep -o . | while read c; do echo "\"${c}\","; done
"こ",
"れ",
"は",
"テ",
"ス",
"ト",
set
code:sample.sh
// script が置いてあるディレクトリで
cd dirname $0
pipefail
pipe で繋いだ左辺のエラーで中断する
POSIX では非推奨
-e
exit immidiately
-u
未定義変数の使用を許可しない
-x
コマンドを出力
option を使う
コロンの使い
h: のように後ろにコロンがつくと -h value のように引数を求める
引数が与えられないとエラー
log を出し分ける
code:log.sh
log()
{
if
(($1 >= logging_level))
then
"${@:2}" >/dev/null 2>&1
else
"${@:2}"
fi
}
${@:2}
二つ目以降の引数をまとめて実行
log logging_level command param
みたいに log func を呼び出せば ok